package com.zhl.scheduling.model.entity;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;

@Table(name = "history_result")
public class HistoryResult {
    /**
     * 调度结果id
     */
    @Id
    @Column(name = "scheduling_result_id")
    private Integer schedulingResultId;

    /**
     * 订单id
     */
    @Column(name = "order_id")
    private Integer orderId;

    /**
     * 算法名称
     */
    @Column(name = "algorithm_name")
    private String algorithmName;

    /**
     * 算法超参数;算法超参数以键值对的形式展现
     */
    @Column(name = "algorithm_hyperparameters")
    private String algorithmHyperparameters;

    /**
     * 算法运行时间;算法运行时间，单位秒
     */
    @Column(name = "algorithm_runtime")
    private BigDecimal algorithmRuntime;

    /**
     * 调度目标结果
     */
    @Column(name = "scheduling_goals_result")
    private String schedulingGoalsResult;

    /**
     * 调度甘特图
     */
    @Column(name = "scheduling_gantt")
    private String schedulingGantt;

    /**
     * 更新时间
     */
    @Column(name = "CREATED_TIME")
    private Date createdTime;

    /**
     * 获取调度结果id
     *
     * @return scheduling_result_id - 调度结果id
     */
    public Integer getSchedulingResultId() {
        return schedulingResultId;
    }

    /**
     * 设置调度结果id
     *
     * @param schedulingResultId 调度结果id
     */
    public void setSchedulingResultId(Integer schedulingResultId) {
        this.schedulingResultId = schedulingResultId;
    }

    /**
     * 获取订单id
     *
     * @return order_id - 订单id
     */
    public Integer getOrderId() {
        return orderId;
    }

    /**
     * 设置订单id
     *
     * @param orderId 订单id
     */
    public void setOrderId(Integer orderId) {
        this.orderId = orderId;
    }

    /**
     * 获取算法名称
     *
     * @return algorithm_name - 算法名称
     */
    public String getAlgorithmName() {
        return algorithmName;
    }

    /**
     * 设置算法名称
     *
     * @param algorithmName 算法名称
     */
    public void setAlgorithmName(String algorithmName) {
        this.algorithmName = algorithmName;
    }

    /**
     * 获取算法超参数;算法超参数以键值对的形式展现
     *
     * @return algorithm_hyperparameters - 算法超参数;算法超参数以键值对的形式展现
     */
    public String getAlgorithmHyperparameters() {
        return algorithmHyperparameters;
    }

    /**
     * 设置算法超参数;算法超参数以键值对的形式展现
     *
     * @param algorithmHyperparameters 算法超参数;算法超参数以键值对的形式展现
     */
    public void setAlgorithmHyperparameters(String algorithmHyperparameters) {
        this.algorithmHyperparameters = algorithmHyperparameters;
    }

    /**
     * 获取算法运行时间;算法运行时间，单位秒
     *
     * @return algorithm_runtime - 算法运行时间;算法运行时间，单位秒
     */
    public BigDecimal getAlgorithmRuntime() {
        return algorithmRuntime;
    }

    /**
     * 设置算法运行时间;算法运行时间，单位秒
     *
     * @param algorithmRuntime 算法运行时间;算法运行时间，单位秒
     */
    public void setAlgorithmRuntime(BigDecimal algorithmRuntime) {
        this.algorithmRuntime = algorithmRuntime;
    }

    /**
     * 获取调度目标结果
     *
     * @return scheduling_goals_result - 调度目标结果
     */
    public String getSchedulingGoalsResult() {
        return schedulingGoalsResult;
    }

    /**
     * 设置调度目标结果
     *
     * @param schedulingGoalsResult 调度目标结果
     */
    public void setSchedulingGoalsResult(String schedulingGoalsResult) {
        this.schedulingGoalsResult = schedulingGoalsResult;
    }

    /**
     * 获取调度甘特图
     *
     * @return scheduling_gantt - 调度甘特图
     */
    public String getSchedulingGantt() {
        return schedulingGantt;
    }

    /**
     * 设置调度甘特图
     *
     * @param schedulingGantt 调度甘特图
     */
    public void setSchedulingGantt(String schedulingGantt) {
        this.schedulingGantt = schedulingGantt;
    }

    /**
     * 获取更新时间
     *
     * @return CREATED_TIME - 更新时间
     */
    public Date getCreatedTime() {
        return createdTime;
    }

    /**
     * 设置更新时间
     *
     * @param createdTime 更新时间
     */
    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }
}